Контентно-адресуемая система хранения

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Контентно-адресуемая система хранения (англ. content-addressable storage, CAS) — система хранения данных, в которой адресация осуществляется образом хранимых данных, образ данных хешируется и хеш используется для его нахождения. Аналог контентно-адресуемой памяти для систем постоянного хранения.

Для реализации обычно используется объектный подход: для каждого элемента хранения — объекта (им может быть файл, блок данных, либо виртуальный том) вычисляется контрольная сумма (например, MD5 или SHA-256), которая становится адресом его размещения. По этому же адресу (ключу) объект впоследствии может быть прочитан из системы.

Подход позволяет эффективно реализовать дедупликацию, гарантии неизменности, горизонтальное масштабирование. Дедупликация реализуется естественным путём, поскольку у одинаковых по содержимому объектов будет одна контрольная сумма. Гарантии неизменности при таком подходе реализуются благодаря контрольной сумме: если содержимое объекта изменяется, то его контрольная сумма будет иной. Это свойство используется для построения систем с гарантиями соответствия стандартам (англ. compliance). Возможность равномерно распределить пространство хэшей позволяет построить многоузловую систему контентно-адресуемую хранения, в который каждый узел отвечает за выделенный диапазон ключей.

Среди серийных контентно-адресуемых систем, получивших распространение в 2000-х — 2010-х годах, — продукты EMC Centera и Atmos, Hitachi HCP, HP StorageWorks RISS, StorageTek 5800 System (Sun, впоследствии Oracle). Также подход широко используется для построения объектных облачных систем хранения.